package powerdev.negocio;

import java.util.Date;

import powerdev.dao.PublicidadDAO;
import powerdev.excepcion.DAOExcepcion;
import powerdev.modelo.Publicidad;

public class GestionPublicidad {
	
	public void insertarPublicidad(int co_Publicidad, String no_Titulo, String tx_Contenido, Date fe_inicioVigencia, Date fe_FinVigencia, 
			Double ss_Tarifa, int nu_Click, int co_Persona, Boolean fl_Estado) throws DAOExcepcion {

		Publicidad modelo = new Publicidad();
		
		modelo.setCo_Publicidad(co_Publicidad);
		modelo.setNo_Titulo(no_Titulo);
		modelo.setTx_Contenido(tx_Contenido);
		modelo.setFe_inicioVigencia(fe_inicioVigencia);
		modelo.setFe_FinVigencia(fe_FinVigencia);
		modelo.setSs_Tarifa(ss_Tarifa); 
		modelo.setNu_Click(nu_Click);
		modelo.setFl_Estado(fl_Estado);

		PublicidadDAO dao = new PublicidadDAO();
		
		String Validacion=Validar(modelo);
		
		if (! Validacion.equals("")){
			
			throw new  DAOExcepcion(Validacion);
		}
		
		dao.insertar(modelo, co_Persona);
		System.out.println("Registro satisfactorio");
		
	}
	
public String Validar(Publicidad publicidad) throws DAOExcepcion {
		
		String Resultado="";
		
		if (publicidad.getNo_Titulo().equals("")){
			Resultado="Falta ingresar El Titulo de la publicidad";
		}
			
		if (publicidad.getTx_Contenido().equals("")){
			Resultado=Resultado + ", Falta ingresar el contenido de la publicidad";
		}
		
		if (publicidad.getSs_Tarifa()==0){
			Resultado=Resultado + ", La tarifa tiene que ser mayor a cero";
		}
		
		return Resultado;
	}
	
	
	
	public void ModificarPublicidad(int co_Publicidad, String no_Titulo, String tx_Contenido, Date fe_inicioVigencia, Date fe_FinVigencia, 
			Double ss_Tarifa, int nu_Click, int co_Persona, Boolean fl_Estado) throws DAOExcepcion {

		Publicidad modelo = new Publicidad();
		
		modelo.setCo_Publicidad(co_Publicidad);
		modelo.setNo_Titulo(no_Titulo);
		modelo.setTx_Contenido(tx_Contenido);
		modelo.setFe_inicioVigencia(fe_inicioVigencia);
		modelo.setFe_FinVigencia(fe_FinVigencia);
		modelo.setSs_Tarifa(ss_Tarifa); 
		modelo.setNu_Click(nu_Click);
		modelo.setFl_Estado(fl_Estado);
		
		PublicidadDAO dao = new PublicidadDAO();
		dao.actualizar(modelo, co_Persona);
	}
	
	public void AnularPublicidad(int co_Publicidad, boolean fl_Estado) throws DAOExcepcion {

		PublicidadDAO dao = new PublicidadDAO();
		dao.Anular_Publicidad(co_Publicidad, fl_Estado);
		
	}
	
	public Publicidad obtener(int co_Publicidad) throws DAOExcepcion {
		Publicidad vo = new Publicidad();
		PublicidadDAO dao = new PublicidadDAO();
		vo = dao.obtener(co_Publicidad);
		return vo;
	}

}
